<!DOCTYPE HTML>
<html>
<head>
    <meta charset="utf-8">
    <meta name="renderer" content="webkit|ie-comp|ie-stand">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
    <meta http-equiv="Cache-Control" content="no-siteapp" />
    <!--[if lt IE 9]>
    <script type="text/javascript" src="/admin/lib/html5shiv.js"></script>
    <script type="text/javascript" src="/admin/lib/respond.min.js"></script>
    <![endif]-->
    <link rel="stylesheet" type="text/css" href="/admin/static/h-ui/css/H-ui.min.css" />
    <link rel="stylesheet" type="text/css" href="/admin/static/h-ui.admin/css/H-ui.admin.css" />
    <link rel="stylesheet" type="text/css" href="/admin/lib/Hui-iconfont/1.0.8/iconfont.css" />
    <link rel="stylesheet" type="text/css" href="/admin/static/h-ui.admin/skin/default/skin.css" id="skin" />
    <link rel="stylesheet" type="text/css" href="/admin/static/h-ui.admin/css/style.css" />
    <!--[if IE 6]>
    <script type="text/javascript" src="/admin/lib/DD_belatedPNG_0.0.8a-min.js" ></script>
    <script>DD_belatedPNG.fix('*');</script>
    <![endif]-->
    <link rel="stylesheet" href="/admin/lib/webuploader/0.1.5/webuploader.css">

    <script type="text/javascript" src="/admin/lib/jquery/1.9.1/jquery.min.js"></script>

    <link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.css" rel="stylesheet">
    <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.js"></script>

    <title>添加专业 - 专业管理 - H-ui.admin v2.4</title>
    <meta name="keywords" content="H-ui.admin v3.0,H-ui网站后台模版,后台模版下载,后台管理系统模版,HTML后台模版下载">
    <meta name="description" content="H-ui.admin v3.0，是一款由国人开发的轻量级扁平化网站后台模板，完全免费开源的网站后台管理系统模版，适合中小型CMS后台系统。">
</head>
<body>
<article class="page-container">
    {{--hui-admin表单的提交使用的ajax提不需要设置form的action地址--}}
    <form class="form form-horizontal" id="form-admin-add">
        <div class="row cl">
            <label class="form-label col-xs-4 col-sm-3"><span class="c-red">*</span>专业名称：</label>
            <div class="formControls col-xs-8 col-sm-9">
                <input type="text" name="name" style="display: none;">
                <input type="text" class="input-text" value=""  autocomplete="off" placeholder="" id="name" name="name">
            </div>
        </div>
        <div class="row cl">
            <label class="form-label col-xs-4 col-sm-3">所属学科：</label>
            <div class="formControls col-xs-8 col-sm-9">
                <span class="select-box" style="width:150px;">
                    <select name="type_id" id="" class="select">
                        @foreach($subjectData as $v)
                            <option value="{{ $v->id }}">{{ $v->name }}</option>
                        @endforeach
                    </select>
                </span>
            </div>
        </div>

        <div class="row cl">
            <label class="form-label col-xs-4 col-sm-3">任课老师：</label>
            {{-- 一般都是做一个弹出框：然后在进行选择--}}
            <div class="formControls col-xs-8 col-sm-9">
                    {{--获取焦点的时候，弹出一个框，然用户选择任课老师--}}
                    <input type="text" class="input-text" value=""  autocomplete="off" placeholder="" id="select_teacher">
                    {{--设置一个隐藏域来保存任课老师的主键id，注意：可能存在多个任课老师--}}
                    <div id="teacher_ids">
                        {{--<input type="hidden" name="teacher_id[]" value="1">--}}

                    </div>
            </div>
        </div>

        <div class="row cl">
            <label class="form-label col-xs-4 col-sm-3"><span class="c-red">*</span>简介：</label>
            <div class="formControls col-xs-8 col-sm-9">
                <textarea name="mark_up" id="" cols="30" rows="10" class="textarea"></textarea>
            </div>
        </div>
        <div class="row cl">
            <label class="form-label col-xs-4 col-sm-3"><span class="c-red">*</span>专业宣传图：</label>
           <div id="mutiImg" class="demo">
               {{-- 使用zy插件即可 1. 引入  2. 初始化--}}
           </div>
            <div id="mutiImgUrl">
                {{--保存多图上传后的url地址隐藏域--}}
                {{--<input type="hidden" name="abulm[]" value="sadfdasf.jpg">--}}

            </div>
        </div>


        <div class="row cl">
            <label class="form-label col-xs-4 col-sm-3"><span class="c-red">*</span>专业封面图：</label>
            <div class="formControls col-xs-8 col-sm-9">
                <div id="picker">图片上传</div>
                {{--定义一个头像预览的预览--}}
                <img src="" alt="" id="yulan" style="display: none;">
                <img src="" alt="" id="yulan2" style="display: none;">
                {{--上传图片的url入库操作--}}
                <input type="hidden" name="img" value="" id="avatarUrl">
                {{-- 上传进度条--}}
                <div class="progress hidden">
                    {{--引入bt--}}
                    <div class="progress-bar  progress-bar-success  progress-bar-striped  active" id="fileProcess" style="width: 1%;">
                        <!-- screen only： 仅对读屏软件可用 正常人眼不显示 国内做网站，视力、听力... 苹果官网 支持读屏软件 盲人是可以上网 苹果色盲 -->
                        {{-- 1. 想办法获取上传文件的大小 2. 获取当前上传的大小  3. 隔一段时间知道最新的情况 4. 根据 已上传 / 总大小 = 上传的百分比 5. 给进度条的 width 设置 百分比即可--}}
                        <span class="sr-only">60% Complete</span>
                        <span id="processValue">1%</span>
                    </div>
                </div>

            </div>
        </div>

        <div class="row cl">
            <div class="col-xs-8 col-sm-9 col-xs-offset-4 col-sm-offset-3">
                <input class="btn btn-primary radius" type="submit" value="&nbsp;&nbsp;提交&nbsp;&nbsp;">
            </div>
        </div>
    </form>
</article>

<!--_footer 作为公共模版分离出去-->

<script type="text/javascript" src="/admin/lib/layer/2.4/layer.js"></script>
<script type="text/javascript" src="/admin/static/h-ui/js/H-ui.min.js"></script>
<script type="text/javascript" src="/admin/static/h-ui.admin/js/H-ui.admin.js"></script> <!--/_footer 作为公共模版分离出去-->

<!--请在下方写此页面业务相关的脚本-->
<script type="text/javascript" src="/admin/lib/jquery.validation/1.14.0/jquery.validate.js"></script>
<script type="text/javascript" src="/admin/lib/jquery.validation/1.14.0/validate-methods.js"></script>
<script type="text/javascript" src="/admin/lib/jquery.validation/1.14.0/messages_zh.js"></script>

{{--webupload插件使用 1. 注意：这个插件也是基于jQuery的，所以必须在jQuery之后引入--}}
{{--hui框架本身是有提供插件--}}
<link rel="stylesheet" href="/admin/lib/webuploader/0.1.5/webuploader.css">
<script type="text/javascript" src="/admin/lib/webuploader/0.1.5/webuploader.js"></script>

{{-- 引入zy插件--}}

<link rel="stylesheet" href="/zy/zyuploader/control/css/zyUpload.css" type="text/css">
<!-- 引用核心层插件 -->
<script type="text/javascript" src="/zy/zyuploader/core/zyFile.js"></script>
<!-- 引用控制层插件 -->
<script type="text/javascript" src="/zy/zyuploader/control/js/zyUpload.js"></script>

{{--初始化--}}
<script type="text/javascript">
    $(function(){
        // 初始化插件
        $("#mutiImg").zyUpload({
            width            :   "650px",                 // 宽度
            height           :   "400px",                 // 宽度
            itemWidth        :   "120px",                 // 文件项的宽度
            itemHeight       :   "100px",                 // 文件项的高度
            url              :   "{{ url('/admin/upload/qiniu') }}",
            multiple         :   true,                    // 是否可以多个文件上传
            dragDrop         :   true,                    // 是否可以拖动上传文件
            del              :   true,                    // 是否可以删除文件
            finishDel        :   false,  				  // 是否在上传文件完成后删除预览
            edt	             :    false,
            tailor: false,
            upLoadfileName   :   "file",  				  // 是否在上传文件完成后删除预览
            userData:            {
                '_token': '{{ csrf_token() }}',
            },					  // 用户自定义数据
            onSuccess: function(file, response){          // 文件上传成功的回调方法
                console.info("此文件上传成功：");
                console.info(response); // 字符串
                var response = JSON.parse( response );
                if( response.status = 'success' ){
                    layer.msg('上传成功');
                    // 将上传的图片的url信息放置在页面的form的隐藏域
                    $("#mutiImgUrl").append('<input type="hidden" name="abulm[]" value="'+ response.data +'">');
                }
            },
            onFailure: function(file, response){          // 文件上传失败的回调方法
                console.info("此文件上传失败：");
                console.info(file.name);
            },

        });

    });
</script>
<script type="text/javascript">
    $("#select_teacher").focus(function(){
        // 打开一个选择框
        layer_show('任课老师', '{{ url("/admin/profession/teacher") }}', 800, 700);
    });

    function fnCallback(data){
        var _name = '';
        $("#teacher_ids").html('');
        $.each(data, function(index, ele){
            _name += ele.name + '、';
            $("#teacher_ids").append('<input type="hidden" name="teacher_id[]" value="' + ele.id + '">');

        });
        $("#select_teacher").val( _name );
    }

    {{--代码调用 1. 定义上传的区域 2. 实例化插件--}}
    function uploadFile(){
        var uploader = WebUploader.create({
            // 开启自动上传，当文件上传后，对应的事件监听函数就会执行
            auto: true,
            // 由于laravel特殊性，在做post提交的时候，需要传递一个_token字段
            formData: {
                '_token': '{{ csrf_token() }}',
            },
            // swf文件路径
            swf: '/admin/lib/webuploader/0.1.5/Uploader.swf', // 为了兼容IE低版本，引入 swf文件

            // 文件接收服务端。
            {{--server: '{{ url('/admin/upload/laravel')  }}', // laravel本地上--}}
            server: '{{ url('/admin/upload/qiniu')  }}', // 云存储
            // 选择文件的按钮。可选。
            // 内部根据当前运行是创建，可能是input元素，也可能是flash.
            pick: '#picker',

            // 不压缩image, 默认如果是jpeg，文件上传前会压缩一把再上传！
            resize: false
        });
        // 监视文件是否被添加到上传列表
        uploader.on( 'fileQueued', function( file ) {

            // 如果为非图片文件，可以不用调用此方法。
            // thumbnailWidth x thumbnailHeight 为 100 x 100
            uploader.makeThumb( file, function( error, src ) {
                console.log( src );// 不是图片的url地址，一般base64编码的图片
                if ( error ) {
                    layer.msg('不能预览');
                    return;
                }

                $("#yulan2").attr( 'src', src).show();

            }, 150, 150 );
        });
        // 监听文件的上传的进度事件
        // 文件上传过程中创建进度条实时显示。
        uploader.on( 'uploadProgress', function( file, percentage ) {
            // 第一个参数：代表是文本的信息，是客户端获取
            // 第二个参数：代表是  已上传 / 总的大小，并且会按照一定的时间的频率来监控文件的上传 小数 ，如果上传完成返回的 1
            var process = parseInt( percentage * 100 );
            $("#fileProcess").css('width', process  + '%').parent().removeClass('hidden');
            if(process == 100){
                $("#fileProcess").removeClass('active');
            }
            $("#processValue").html( process  + '%' );


        });
        // 成功上传
        uploader.on( 'uploadSuccess', function( file, response ) {
            if(response.status == 'success' ){
                $("#yulan").attr('src', '/' + response.data).fadeIn(3000);
                $("#avatarUrl").val(response.data);
            }
        });

    }
    uploadFile();

    $(function(){
        $('.skin-minimal input').iCheck({
            checkboxClass: 'icheckbox-blue',
            radioClass: 'iradio-blue',
            increaseArea: '20%'
        });
        // hui框架封装的表单的提交功能 validate方法 底层使用的 jquery的一个 validate插件
        $("#form-admin-add").validate({
            rules:{
                username:{
                    required:true,
                    minlength: 2,
                    maxlength: 16
                },
                phoneNumber:{
                    required:true,
                    isPhone:true
                },
                email:{
                    required:true,
                    email:true
                }
            },
            onkeyup:false,
            focusCleanup:true,
            success:"valid",
            // 验证通过的情况下，该回调函数被触发
            submitHandler:function(form){
                // 这个是表单的提交 $.ajax 可以完成表单里面文件提交
                $(form).ajaxSubmit({
                    type: 'post',
                    url: "{{ url('/admin/profession/add') }}",
                    data: {'_token': "{{ csrf_token() }}"},
                    success: function(data){
                        layer.msg('添加成功!',{icon:1,time:1000});
                        // 在表单提交后，会关闭当前的窗口。 parent 代表父窗口，弹出的为子窗口
                        var index = parent.layer.getFrameIndex(window.name);
                        // 页面刷新
//                    parent.location.reload();// 父窗口的url地址重新加载
                        parent.layer.close(index);

                    },
                    error: function(XmlHttpRequest, textStatus, errorThrown){
                        // 如果后端验证不通过，则会触发这个error回调
                        var _error = JSON.parse( XmlHttpRequest.responseText );
                        console.log( _error ); // 对象 {email: ['邮箱不存在']}
                        var _html = '';
                        for( var j in _error ){
                            _html += _error[j][0] + ' ';
                        }
                        layer.msg( _html, {icon:1,time:1000});
                    }
                });

            }
        });
    });
</script>
<!--/请在上方写此页面业务相关的脚本-->
</body>
</html>